home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-07-15 | 12.7 KB | 324 lines | [TEXT/ttxt] |
- *******************************************************************
- NetWork is a project in distributed computing. The goal of the
- project is to produce a system independent implementation model of
- the communications and management code enabling a developer to
- investigate or use asynchronous distributed computing techniques.
- An implementation of neural networks, the "Spinning Brain", serves
- as test application.
-
- Copyright 1989-1991 The NetWork Project, StatLab Heidelberg
- Copyright 1989-1991 Günther Sawitzki, Heidelberg
- Reimer Kühn, Heidelberg
- Joachim Lindenberg, Karlsruhe
- All rights reserved
-
- This is the NetWork Project distribution package.
- - Version 1.2 or higher -
-
- All documentation files of this distribution package are spooled
- with LinkSaver 6.0.1 for US letter format. You can read it using
- AppleLink or SuperGlue.
-
- *******************************************************************
- if you have developed your own software using versions of NetWork
- before 1.1, you will need to adapt your code to the newer version.
-
- *** adapt your code and recompile. ***
-
- For more information, see "Change History" and "Scheduler History".
- The Programmer's Guide has been rewritten to reflect the changes.
- See NetWork.Canon for a list of changed procedures/functions.
-
- To adapt to mere name changes, you can use the file NetWork.Canon
- in NetWork Programmer's Stuff.
- *******************************************************************
-
- Changes since 1.2b4:
- 1.2.3 (NetWork Processor 1.2.3) released June 19th, 1991
-
- 1.2.2
- NetSim rewritten to align with Random&Template 4.6
-
- 1.2.1 Minor fixes
- 1.2 (NetWork Processor 1.2.3) released Oct. 15th, 1991
-
- 1.2b12 (NetWork Processor 1.2b6)
- Removed ExitNetWork and NLExit. These calls are no longer
- necessary and are not supported.
-
- Modified NLNext to be fail-safer when it is called, but
- the lookup system has not been initialized. Could lead to crashes
- in earlier versions if the NetWork porcessor was not installed
- correctly.
-
- 1.2b11
- Added NetSim (with source code) as an example of a full
- Application using NetWork.
-
- 1.2b10 (NetWork Processor 1.2b5)
- ReadWritePatch fails gracefully if MFS disks are accessed (no crash,
- but file information cannot be obtained).
- Modified several Str31 declarations to Str255 in order to avoid
- problems with outdated (MFS) and forthcoming file systems using
- longer names. Added a local variable in LaunchLocalApplication in
- order to preserve the caller´s file name (which was modified if
- aliases with different names were used).
-
- 1.2b9 released July 1st, 1991
- 1.2b4-1.2b8 internal versions
-
- *******************************************************************
- For those in a hurry
-
- Services and facilities provided by NetWork
- • management of asynchronous distributed computing
- • idle time computing
- • inter-application communication
- • remote launching
- • transport shielding
- • low level log file support
-
- System requirements and restrictions: The Macintosh version of
- NetWork runs on Macintosh Plus or higher, MacOs 6.0x or better with
- Multifinder, or System 7, or A/UX 2.0.1 or better.
- The basic version of NetWork can make use of any AppleTalk implemen-
- tation, but only addresses in the local zone will be used.
-
- *******************************************************************
- We are very sorry to inform you that NetWork is a real world
- software project.
-
- The available software may be outdated with respect to our present
- ideas.
- The available documentation may be outdated with respect to our
- present software.
- Your software may be outdated with respect to our software.
-
- Apple's Software may be outdated with respect to...
-
- We are very sorry to confront you with these aspects of
- asynchronicity.
-
- The recent accessible software is available via anonymous ftp from
- statlab.uni-heidelberg.de <129.206.113.100>
- on internet.
-
- The recent accesible documentation can be read from the interfaces.
-
- The NetWork software was developed and tested with the materials
- provided on ETO 3, MacOS 6.0.5, System 7.0b4, 7.0 golden, and
- A/UX 2.0.1. A/UX 2.0.1 must be patched to allow for a static socket #40.
- Patch instructions are provided with NetWork.
-
- UDPTransport was developed with the material on MacTCP Developer
- Disk 1.0.1
-
- *******************************************************************
- Getting started: Move the file "NetWork Processor" and the folder
- "NetWork Tools" into your system folder, and into that of any
- Macintosh on your AppleTalk network cooperating on experiments
- using the NetWork softeware. Restart all Macintoshes which are to
- cooperate. For computers other than the Macintosh, follow the
- installation instructions specific to that machine to install a
- NetWork Processor. You can now run the sample program.
- See "How to use Spinning Brain…" for details.
-
- To develop your own software to experiment with, you have to use
- unit NetWorkLookup from file NetWorkLookup.p,
- NetWork from file NetWork.p,
- and link with NetWorkLib.o.
- You can make use of the objects supplied in SchedulerUnit.p which
- provide high-level access to the NetWork message system.
-
- To use additional examples documented in the NetWork Programmer's
- Guide, move the folders "NetWork Idle Tools" and "NetWork Startup
- Tools" to your system folder.
-
- MPW commands which might help you to install the NetWork software
- and tools are given below. Please send all bug reports, requests,
- comments to
-
- G. Sawitzki
- StatLab Heidelberg
- Im Neuenheimer Feld 294
- D 6900 Heidelberg
-
- AppleLink:GER.XUU0003
- Internet: network@statlab.uni-heidelberg.de
- Bitnet: J40@DHDURZ1
-
- To support debugging and monitoring, please create a folder
- "NetWork Logs" in your system folder and switch on the "Log errors…"
- option in the NetWork Processor control panel entry.
- This will create log files. The log files are not truncated
- automatically in the beta version. Please check their sizes
- regularly if logging is switched on, and include a copy of your log
- file when reporting bugs.
-
-
- ###################################################################
- ###################################################################
- ## These lines may help you to install the NetWork software using MPW.
- ## You will be asked to select the source directory (the distribution
- ## disk). Next, NetWork will be installed in default locations.
- ( #<- to install NetWork, double click on this bracket & press enter
- ##
- ## Try to identify environment: Where is the original material ?
- (Evaluate "{active}" =~ /(≈)®1:(≈)®2/ )>dev:null
- set NetWorkSource "{®1}:" # source = directory this file resides in.
- open "{Worksheet}"
- (
- set NetWorkSource `GetFileName -b Select -d "{NetWorkSource}"`
-
- echo -n '# installing the NetWork processor in '
- set NetWorkControlPanel "{systemfolder}" # default: system 6
- set NetWorkControlPanel `exists "{systemfolder}Control Panels:"` >dev:null
- quote "{NetWorkControlPanel}"
- duplicate "{NetWorkSource}NetWork Processor" "{NetWorkControlPanel}"
- Unset NetWorkControlPanel
-
- echo -n '# installing compiled examples in ';quote "{systemfolder}"
- duplicate "{NetWorkSource}Examples (For System Folder):"≈ "{SystemFolder}"
-
- echo -n '# installing the NetWork Look in '
- set NetWorkChooser "{systemfolder}" # default: system 6
- set NetWorkChooser `exists "{systemfolder}Extensions:"` >dev:null
- quote "{NetWorkChooser}"
- if "{NetWorkChooser}" != "{SystemFolder}"
- move "{SystemFolder}NetWork Look" "{NetWorkChooser}"
- end
- Unset NetWorkChooser
-
- echo '# installing libraries and interfaces'
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"NetWorkLib.o "{Libraries}"
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"NetWork.p "{Pinterfaces}"
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"NetWorkLookup.p "{Pinterfaces}"
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"NetWork.h "{Cincludes}"
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"SchedulerUnit.p.o "{Libraries}"
- duplicate "{NetWorkSource}NetWork Programmer's Stuff:"SchedulerUnit.p "{Pinterfaces}"
-
- echo '# NetWork installation done'
- Unset NetWorkSource
- ) ∑∑ "{Worksheet}"
- )
-
- ###########################################################################
- ***************************************************************************
- The NetWork distribution set contains at least:
-
- NetWork Processor control panel extension
- NetWorkLib.o library file
- NetWork.p message system interface
- NetWorkLookup.p lookup system interface
- SchedulerUnit.p task scheduling
-
- Documentation:
- ==============
- How to use NetWork Processor user's guide to the control panel extension
- NetWork Programmer's Guide general information and programmer's guide
- The NetWork Project background about the NetWork project
- NetWork Communications background info about the communication model
- NetWork Examples additional information about examples.
-
- How to use "Spinning Brain" user's guide to the sample program
- Spinning Brain background information about "Spinning Brain"
-
-
- ===========================================
- = Known Problems, Bugs, Restrictions etc: =
- ===========================================
-
- =============================
- = General Problems and Bugs =
- =============================
- A bug in Quickmail Init has reported on a Macintosh si which shows may show up
- if NetWork is installed. If Quickmail Init crashes, try loading it before Net-
- Work by renaming it AQuickmail Init.
- Changes in Apple's MPW interface are generally not well documented.
- You may need to adapt to the interface files if using MPW versions
- other than MPW QR3.
- If a remote process exits, the currently active process may receive a chield
- died event. Some versions of the Backgrounder do not handle the process id
- gracefully and will call debugger. Workaround: if your debugger crashes, set
- the AcceptChildDiedEvent in the Backgrounder's size resource to false.
-
- Documentation:
- ==============
-
- Terminology needs to be reviewed. Part of the documentation may still
- reflect earlier versions of the product (e.g. Spinning Brain).
-
- NetWork Transport documentation is outdated.
- An updated version is available upon request.
-
- Scheduler:
- ==========
-
- Version later than 0.9a6 allows an adaptive scheduler.
- Spinning Brain makes use of this.
- Interface subject to change.
-
- NetWorkLib.o & NetWork.p:
- ========================
-
- A compiled version of NetWork.p and NetWorkLookup.p is contained in
- NetWorkLib.o. The Scheduler is not not contained in NetWorkLib.o and
- must be compiled and linked explicitely with your program.
-
- Passing MsgTrp as a pointer causes problems if the transport system is
- removed. On the other hand, passing a signature requires to walk the
- queue of transports for every send, and also requires to add a field
- that caches the MsgTrp pointer for use at IRQ time. This should be
- documented in the NetWork Programmer´s Guide or a forthcoming document
- about writing own transport systems.
-
- Ticks are inaccurate for large message transfers via LocalTalk. The
- maximum ATP response packets take longer to transfer than a tick,
- therefore ticks WILL be lost (times reported for message transfer are
- above the actual bandwidth of the media (up to 100KB/s !!)
-
- NetWork Processor:
- ==================
-
- NetWork Processor does not return any NetWork events if Multifinder
- is not loaded. Starting with 1.1a28, NetWork Processor returns an
- error if an application tries to install an event code. NetWork
- Processor does not return an error (at least at present) if the
- application does not ask for events. This should be documented
- in the NetWork Programmer´s Guide.
-
- Spinning Brain:
- ===============
-
- When distributed computing modes are used (asynchronous or genetic), a change
- bar is also shown if no remote station has been found and a task has been
- redirected to the local station. (Make different colour in next version!)
- Observe: Overlap observer only gives overlaps to first picture shown in the
- album (bottom left picture).
- Observe: Copy&Clear not implemented for observers.
- Ctl menu: genetic needs evolutionary jumps.
- Neural net menu: only LF net, random steps, is activated.
- Handling of large albums unclear (restrict ? grow ?).
-
- The default error handler of the Scheduler uses the debugger. Please
- note the calling chain for error reports.
- The NetWork Processor spare flag is used to control debugging reports.
-
- Other Examples:
- ===============
-
- - more documentation to come -
-
- =============================================
- = Open design issues (comments are welcome) =
- =============================================
-
- An additional attribute (MsgNeedsAcknowledgement) may be introduced. Having
- at least knowledge about succesful forwarding seems to be a common request.
- If introduced, the acknowledgement package will contain information about
- the expected time of completion if this can be estimated by the recipient,
- for use with adaptive scheduler cohandlers. Drawback: this is against the
- purity of the idea to provide a minimal design & system.
-
-
-